package com.chenfan.mcn.model.vo;

import com.chenfan.mcn.enums.IncomeContractTypeEnum;
import com.chenfan.mcn.enums.PaybackStatusEnum;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Objects;

/**
 * 分页查询可关联的收入合同VO
 * @author wulg
 * @date 2022/11/29
 */
@Data
public class AnnualRebateIncomeContractListVO implements Serializable {

    private static final long serialVersionUID = -3721424490050572877L;
    /**
     * 合同ID
     */
    private Long id;

    /**
     * 合同编号
     */
    private String contractCode;

    /**
     * 合同类型
     * {@link com.chenfan.mcn.enums.IncomeContractTypeEnum}
     */
    private Integer contractType;

    /**
     * 品牌名称
     */
    private String cooperateBrandName;

    /**
     * 合作产品
     */
    private String cooperateProduct;

    /**
     * 商务确认合同金额
     */
    private BigDecimal businessAmount;

    /**
     * 回款状态"0未回款；1部分回款；2已回款"
     */
    private Integer payBackStatus;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 合同类型名称
     */
    private String contractTypeName;

    /**
     * 回款状态名称
     */
    private String payBackStatusName;


    public String getContractTypeName() {
        if (Objects.nonNull(getContractType())) {
            return IncomeContractTypeEnum.getContractTypeName(getContractType());
        }
        return null;
    }

    public String getPayBackStatusName() {
        if (Objects.nonNull(getPayBackStatus())) {
            return PaybackStatusEnum.getStatusName(getPayBackStatus());
        }
        return null;
    }
}
